package com.ruoyi.system.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.system.domain.AdminPrizeRecord;
import org.springframework.web.bind.annotation.PathVariable;

/**
 * 开奖记录Service接口
 *
 * @author ruoyi
 * @date 2020-09-22
 */
public interface IAdminPrizeRecordService
{
    /**
     * 查询开奖记录
     *
     * @param recordId 开奖记录ID
     * @return 开奖记录
     */
    public AdminPrizeRecord selectAdminPrizeRecordById(Long recordId);

    /**
     * 查询开奖记录列表
     *
     * @param adminPrizeRecord 开奖记录
     * @return 开奖记录集合
     */
    public List<AdminPrizeRecord> selectAdminPrizeRecordList(AdminPrizeRecord adminPrizeRecord);

    public List<AdminPrizeRecord> selectAdminPrizeRecordListTwo(AdminPrizeRecord adminPrizeRecord);

    public List<AdminPrizeRecord> selectAdminPrizeRecordListToAgent(AdminPrizeRecord adminPrizeRecord);

    public List<AdminPrizeRecord> selectAdminPrizeRecordListToAgentFifty(AdminPrizeRecord adminPrizeRecord);

    public Map<String,Object> selectAdminPrizeRecordCount();

    public List<AdminPrizeRecord> selectAdminPrizeRecordLimit();

    public AdminPrizeRecord selectAdminPrizeRecordByPrizeTime();

    public AdminPrizeRecord selectAdminPrizeRecordByPrizeTimeForMax();
    public int updatePrizeState();
    public AdminPrizeRecord selectAdminPrizeRecordByNewTime();
    public List<AdminPrizeRecord> getPrizeList(@PathVariable("searchTime") String searchTime);

    public AdminPrizeRecord selectAdminPrizeRecordByMaxPeriod();

    public AdminPrizeRecord getCurrentPrizeInfo();

    public AdminPrizeRecord getMinPrizeInfoByPeriod();

    public AdminPrizeRecord getNextPrizeInfo();

    /**
     * 新增开奖记录
     *
     * @param adminPrizeRecord 开奖记录
     * @return 结果
     */
    public int insertAdminPrizeRecord(AdminPrizeRecord adminPrizeRecord);

    /**
     * 修改开奖记录
     *
     * @param adminPrizeRecord 开奖记录
     * @return 结果
     */
    public int updateAdminPrizeRecord(AdminPrizeRecord adminPrizeRecord);

    /**
     * 批量删除开奖记录
     *
     * @param recordIds 需要删除的开奖记录ID
     * @return 结果
     */
    public int deleteAdminPrizeRecordByIds(Long[] recordIds);

    /**
     * 删除开奖记录信息
     *
     * @param recordId 开奖记录ID
     * @return 结果
     */
    public int deleteAdminPrizeRecordById(Long recordId);
}
